﻿Module Module1

  Sub Main()
    Cerca()
  End Sub

  Sub Cerca()
    Dim numeri() As Integer = _
        {0, 1, 5, 8, 12, 3, 0, 14, 7}
    ' definisce il riferimento al 
    ' metodo delegato:
    Dim p As New Func(Of Integer, _
             Boolean)(AddressOf FindNotZero)
    Dim elenco = numeri.Where(p)
    ' prepara il messaggio da visualizzare:
    Dim messaggio As String = ""
    For Each n In elenco
      messaggio &= CType(n, String) & " "
    Next
    Console.WriteLine(messaggio)
    Console.ReadLine()
  End Sub

  Function FindNotZero(ByVal numero _
          As Integer) As Boolean
    Return numero <> 0
  End Function
End Module
